package com.qf.qfleadnewsmodel.commons.consts;

public interface RedisConst {
    String NEWS_PUBLISH_MD_PREFIX = "NEWS:PUB:MD:";

    /**
     * 即时消费队列数据key的前缀
     */
    String NOW_CONSUME_TASK_PREFIX = "TASK:NOW:";
    /**
     * 预热队列数据key的前缀
     */
    String FUTURE_CONSUME_TASK_PREFIX = "TASK:FUTURE:";

    /**
     *  队列类型
     */
    String LIST_TYPE = "LIST";
    String ZSET_TYPE = "ZSET";

    /**
     * 防止任务数据迁移&任务消费的并发安全的读写锁
     */
    String DATA_MOVE_AND_CONSUME_READ_WRITE_LOCK = "DATAMOVE:CONSUME:RWL";
    /**
     * 防止集群环境下， 多个定时任务在将zset中数据迁移到list中时的并发安全问题
     */
    String ZSET_2_LIST_LOCK = "ZSET:2:LIST:LOCK";

    /**
     * 保存文章阅读量的前缀
     */
    String ARTICLE_READ_PREFIX = "ARTICLE:READ:";
    /**
     * 保存文章喜欢的前缀
     */
    String ARTICLE_LIKE_PREFIX = "ARTICLE:LIKE:";
    /**
     * 保存文章不喜欢的前缀
     */
    String ARTICLE_UNLIKE_PREFIX = "ARTICLE:UNLIKE:";
    /**
     * 保存文章收藏的前缀
     */
    String ARTICLE_COLLECTION_PREFIX = "ARTICLE:COLLECTION:";

    /**
     * 热点资讯缓存的前缀
     */
    String ARTICLE_HOT_CACHE_PREFIX = "ARTICLE:HOT:CACHE:";

    /**
     * 阅读的权重值
     */
    int BEHAVIOR_READ_WEIGHT = 1;
    /**
     * 点赞的权重值
     */
    int BEHAVIOR_LIKE_WEIGHT = 5;
    /**
     * 收藏的权重值
     */
    int BEHAVIOR_COLLECTION_WEIGHT = 10;
}
